#ifndef AKTAZO_EXCEPTIONS_H
#define AKTAZO_EXCEPTIONS_H

#include <exception>
#include <string>

///exception base class for handling Aktazo (application) level exceptions

class Aktazo_exceptions : public std::exception
{
	private:
		std::string message;
		///message to display with what()
		
		std::string debug_info;
		///optional info for debugging: filename, line number etc.

	public:
		Aktazo_exceptions() throw () : message("Egyeb hiba.")
		{
		}

		Aktazo_exceptions(const std::string &p_debug_info) throw() : message("Egyeb hiba: "), debug_info(p_debug_info)
		{
			message.append(debug_info);
		}

		~Aktazo_exceptions() throw()
		{
		}

		virtual const char* what() const throw()
		{
			return(message.c_str());
		}
};

#endif
